package com.cn.web.user.service;

import com.cn.page.PageVo;
import com.cn.user.UserDO;
import com.cn.web.user.vo.*;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * description: UserService <br>
 * date: 21.12.14 13:42 <br>
 * author: cn_yaojin <br>
 * version: 1.0 <br>
 */
public interface UserService {

    Object edit(UserEditDTO userEdit);

    List<UserVO> list(UserSearch userSearch);

    PageInfo<UserVO> page(PageVo<UserSearch> pageVo);

    Object searchUser(UserSearch userSearch);

    UserEditDTO find(String userId);

    UserEditDTO findByPhone(String userId);

    UserDO findById(String id);


    UserDO findUserDoByPhone(String phone, String userType);

    void start(Long userId, String status);

    void del(Long userId);

    String restPass(Long userId);

    void updatePass(PassRestEditDTO pass);

    void updateUserBaseInfoById(OpenUserEdit info);

    PageInfo<UserEditDTO> pageUserPageOpenApi(PageVo<UserSearch> pageVo);

    List<UserDO> selectPhone(List<String> userIds);

    /**
     * 注销
     *
     * @return
     */
    Object logout();
}
